/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package my.contacteditor;

/**
 *
 * @author Felipe
 */
import banco.ConexaoMySQL;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.swing.table.DefaultTableModel;


public class Equipamento {

    private int numpatrimonio;
    private String defeito;
    private String nomequip;
    private String marca;
    private String carga;
    
    private Connection conn;
  private  String sql;


    public void SetDefeito(String vdefeito){
        defeito = vdefeito;
    }
    public void SetNomeEquipamento(String vnomequip){
        nomequip = vnomequip;
    }
    public void SetNumeroPatrimonio(int vnumpatrimonio){
        numpatrimonio = vnumpatrimonio;
    }
    public void SetMarca(String vmarca){
        marca = vmarca;
    }
    public void SetCarga(String vcarga){
        carga = vcarga;
    }

/////////////////////////////////////////

    public String getDefeito(){
        return defeito;
    }
    public String getNomeEquipamento(){
        return nomequip;
    }
    public int getNumeroPatrimonio(){
        return numpatrimonio;
    }
    public String getMarca(){
        return marca;
    }
        public String getCarga(){
        return carga;
    }


    //public boolean Cadastrar(String vnome, String vsetor) {
       // return carga.Cadastrar(vnome, vsetor);
//}
    
    public boolean Cadastrar(String vmarca,int vnumpatrimonio,String vnomequip,String vdefeito, String vcarga ){
        conn = ConexaoMySQL.getConexaoMySQL();
        boolean retorno = false;
        try
        {
                        //Monta o Sql de insert
             sql = "INSERT INTO Equipamento (marca,numpatrimonio,nomequip,defeito,carga) VALUES ('"+vmarca+"', '"+vnumpatrimonio+"', '"+vnomequip+"', '"+vdefeito+"', '"+vcarga+"')";
             Statement stm = conn.createStatement();
             stm.execute(sql);
             retorno = true;
        }
        catch(SQLException ex)
        {
            //Tratamento de erro
        }
        return retorno;
}


    public boolean Excluir(int vnumpatrimonio){



        conn = ConexaoMySQL.getConexaoMySQL();
boolean retorno = false;
        try
        {

            //Monta o Sql de exclusao
            sql = "DELETE FROM equipamento WHERE numpatrimonio="+vnumpatrimonio;
            Statement stm = conn.createStatement();
            stm.execute(sql);
            retorno = true;
        }

        catch(SQLException ex)
        {
            //Tratamento de erro
        }
        return retorno;
        /////////////////////////////////////////////////////////////////// String vnomequip ,int vnumpatrimonio,String vmarca,Cliente vcarga
    }
public boolean Alterar(String vnomequip ,int vnumpatrimonio,String vmarca,String vcarga,String vdefeito)
    {
        System.out.println("entrou");
        boolean retorno = false;
        //Conexao ao banco de dados
        conn = ConexaoMySQL.getConexaoMySQL();
        try
        {
            //Monta o Sql de insert
            sql = "UPDATE embrapa.equipamento SET nomequip = '"+vnomequip+"',numpatrimonio = '"+vnumpatrimonio+"',marca = '"+vmarca+"', carga = '"+vcarga+"', defeito = '"+vdefeito+"' WHERE numpatrimonio = "+vnumpatrimonio;


            Statement stm = conn.createStatement();
            stm.execute(sql);
            retorno = true;
        }
        catch(SQLException ex)
        {
            //Tratamento de erro
        }
        return retorno;


    }

  public DefaultTableModel ListarTodos()
    {
        conn = ConexaoMySQL.getConexaoMySQL();

        String[] colunasTabela = new String[]{"carga","marca","defeito","numero de patrimonio","nome do equipamento"};
        DefaultTableModel modeloTabela = new DefaultTableModel(null, colunasTabela) {
            @Override
            public boolean isCellEditable(int row, int col) {
                return false;
            }
        };

        try
         {
            //Monta o Sql de consulta
            sql = "Select * from equipamento";
            Statement stm = conn.createStatement();
            ResultSet rs =  stm.executeQuery(sql);

            while(rs.next())
            {
                modeloTabela.addRow(new String[]{
                 //String.valueOf(rs.getInt("codigo")),
                 
                 rs.getString("carga"),
                 rs.getString("marca"),
                 rs.getString("defeito"),
                 rs.getString("numpatrimonio"),
                 rs.getString("nomequip")

             });

            }

         }
         catch(SQLException ex)
         {
            //Tratamento de erro
         }

        return modeloTabela;
    }
     public List<Equipamento> ListarTodosObj()
    {
        conn = ConexaoMySQL.getConexaoMySQL();
        //Retorno da classe, lista de clientes
        ArrayList<Equipamento> equipamentos = new ArrayList<Equipamento>();

       try
         {
            //Monta o Sql de consulta
            sql = "Select * from equipamento";
            Statement stm = conn.createStatement();
            ResultSet rs =  stm.executeQuery(sql);
            Equipamento equipamento;
            while(rs.next())
            {
                equipamento = new Equipamento();
                equipamento.numpatrimonio = rs.getInt("Numero de Patrimonio");
                equipamento.nomequip = rs.getString("Nome do Equipamento");
                equipamento.marca = rs.getString("Marca");
                equipamento.defeito = rs.getString("Defeito");
                equipamento.carga = rs.getString("carga");
                equipamentos.add(equipamento);
             }



         }
         catch(SQLException ex)
         {
            //Tratamento de erro
         }

        return equipamentos;
    }

}
